/**
 * @class Ext.form.Field 
 * <p>新增更加符合国内前端页面应用的表单属性</p>
 */
Ext.apply(Ext.form.Field.prototype, {
    /**
     * @cfg {Boolean} fieldRequired 
     * <p>True表示此项为必输项, 并显示必输项标识符 (defaults to false). fieldRequired与{@link #allowBlank}的区别: </p>
     * <div class="sub-desc">当allowBlank==true时, 表示此项允许为空, False表示此项必输项, 但不显示必输项标识符</div>
     * <div class="sub-desc">当fieldRequired==true时, 表示此项为必输项, 而且在{@link #fieldLabel}前显示必输项标识符
     * {@link Ext.form.FormPanel#fieldRequiredLabel fieldRequiredLabel}, fieldRequiredLabel默认为'*'</div>
     * <p><b>Note</b>: 当执行initComponent()时, 如果fieldRequired==true, allowBlank会自动设置为false. 
     * 如果{@link #hideLabel}==true, {@link Ext.form.FormPanel#fieldRequiredLabel fieldRequiredLabel}则不会被显示出来</p>
     */
    fieldRequired: false,
    
    // private
    originalInitComponent: Ext.form.Field.prototype.initComponent,
    
    // private
    initComponent: function() {
        if (this.fieldRequired) { // 当fieldRequired==true时, 设置allowBlank为false, 不允许为空
            this.allowBlank = false;
        }
        this.originalInitComponent.call(this);
    }
});
